Rand           dd  0
HighNum        dd  200
LowNum         dd  10
RandNum        dd  0

time           SYSTEMTIME <?>


LoopR:
         mov     Rand, 5398475 ; Seed numbed
      INVOKE     GetLocalTime, addr time
         xor     eax, eax
         mov     ax, time.wMilliseconds
         add     Rand, eax
         mov     ax, time.wSecond
         add     Rand, eax
         mov     ebx, HighNum  ; Hi num
         sub     ebx, LowNum   ; Lo num
         inc     ebx
         xor     edx, edx
         mov     eax, Rand
         div     ebx
         add     Rand, eax
         add     edx, LowNum   ; Lo num
         mov     eax, edx
      .if eax > HighNum || eax == RandNum
            jmp     LoopR
      .endif
         mov     RandNum, eax
